# Default with ACPI
# Written by: Maciej Delmanowski <harnir@post.pl>
# 2005.08.11 - <linio@wonder.pl> support for:
#  o AcpiBatt - Battery charge status
#  o CpuFreq  - Frequency of CPU
#  o CpuTemp  - Temperature of CPU
#
# You can use folding to navigate this file

# ImagePath {{{1
SetEnv Icon-Theme "Default"
ImagePath $[FVWM_USERDIR]/icons/$[Icon-Theme]:$[FVWM_SYSTEMDIR]/icons/$[Icon-Theme]

# Includes and FVWM modules {{{1
Module FvwmCommandS

# Default FVWM-Crystal functions, initialization {{{2
Include components/desktop/FVWM-Crystal_Functions
Include components/functions/Clear-FVWM-Settings
Include components/desktop/FVWM-Crystal_Preferences
Append preferences/Startup

# Preferred applications {{{2
Include components/functions/Screenshot-import
Include components/apps/XScreenSaver
Include components/apps/FvwmMiniConsole
Include components/apps/QuakeConsole

# Desktop & window bindings {{{2
Include components/bindings/Desktop-RMB-OpenTerminal
Include components/bindings/Desktop-MMB-EdgeScroll
Include components/bindings/Desktop-MMB-TogglePanels
Include components/bindings/Window-Basic
Include components/bindings/Window-Border

# Keyboard bindings {{{2
Include components/desktop/Keyboard
Include components/desktop/Keyboard_NumLock
Include components/desktop/Numpad

# Various styles {{{2
Include components/desktop/FVWM-Crystal_Styles
Include components/styles/CursorStyle-Border

# Desktop settings {{{1
EdgeScroll	0	0
EdgeResistance	0	100
HideGeometryWindow	Move, Resize
OpaqueMoveSize	100
EdgeThickness	1

EWMH-Desktop 3 3 3 3
EWMH-Panel-Top 30
EWMH-Panel-Bottom 30

# Main panel with FVWM-Crystal menu {{{1
All (FvwmButtons-MainMenu) Close
DestroyModuleConfig FvwmButtons-MainMenu: *
*FvwmButtons-MainMenu: Geometry +3+3
*FvwmButtons-MainMenu: BoxSize smart
*FvwmButtons-MainMenu: ActiveColorset $[cs-panel-active]
*FvwmButtons-MainMenu: Colorset $[cs-panel-inactive]
*FvwmButtons-MainMenu: Rows 1
*FvwmButtons-MainMenu: Padding 1 1
*FvwmButtons-MainMenu: Frame 0

# Diamond {{{2
*FvwmButtons-MainMenu: (1x1, Size 22 22, Icon "22x22/fvwm-crystal/fvwm-crystal.png", \
Action (Mouse 1) Menu /FVWM-Crystal $[MenuPosition-SE], \
Action (Mouse 3) Wallpaper-Random $[FVWM_SYSTEMDIR]/wallpapers $[FVWM_USERDIR]/wallpapers ~/wallpapers /usr/local/share/wallpapers /usr/share/wallpapers)

# Main "diamond" menu {{{2
DestroyMenu /FVWM-Crystal
AddToMenu /FVWM-Crystal
+ '%22x22/fvwm-crystal/preferences-desktop-screensaver.png%$[gt.Screensaver]' Popup /Screensaver
+ '%22x22/fvwm-crystal/camera-photo.png%$[gt.Screenshot]' Popup /Screenshot
+ "" Nop
+ '%22x22/fvwm-crystal/preferences-desktop-theme.png%$[gt.Window decorations]' Popup /Window-Decorations
+ '%22x22/fvwm-crystal/colorsets.png%$[gt.Colorsets]' Popup /Colorsets
+ '%22x22/fvwm-crystal/preferences-desktop-wallpaper.png%$[gt.Wallpaper]' Popup /Wallpaper
+ '%22x22/fvwm-crystal/preferences-desktop.png%$[gt.Preferences]' Popup /Preferences
+ "" Nop
+ '%22x22/fvwm-crystal/applications-development.png%$[gt.Developer menu]' Popup /Developer
+ '%22x22/apps/fvwm-crystal.png%$[gt.About FVWM-Crystal]' Include components/functions/About
+ '%22x22/fvwm-crystal/system-log-out.png%$[gt.Exit]' Popup /Exit
# }}}2

Module FvwmButtons FvwmButtons-MainMenu

# Music panel {{{1
All (FvwmButtons-Music) Close
DestroyModuleConfig FvwmButtons-Music: *
*FvwmButtons-Music: Geometry +31+3
*FvwmButtons-Music: BoxSize smart
*FvwmButtons-Music: ActiveColorset $[cs-panel-active]
*FvwmButtons-Music: Colorset $[cs-panel-inactive]
*FvwmButtons-Music: Rows 1
*FvwmButtons-Music: Padding 1 1
*FvwmButtons-Music: Frame 0

# music controls button {{{2
*FvwmButtons-Music: (1x1, Size 22 22, Icon "22x22/fvwm-crystal/media-skip-forward.png", \
        Action (Mouse 1) Music-Next, \
        Action (Mouse 2) Nop, \
        Action (Mouse 3) Music-Prev, \
	Action (Mouse 4) Music-Forward, \
	Action (Mouse 5) Music-Backward)

# Main music button, with some menus {{{2
*FvwmButtons-Music: (1x1, Size 22 22, Icon "22x22/fvwm-crystal/media-playback-start.png", \
Action (Mouse 1) Menu /Music $[MenuPosition-S], \
Action (Mouse 2) Music-GUI, \
Action (Mouse 3) Music-PlayPause, \
Action (Mouse 4) Mixer-Volume +10, \
Action (Mouse 5) Mixer-Volume -10)
# }}}2

Module FvwmButtons FvwmButtons-Music

# Applications panel and menu generator {{{1
All (ApplicationPanel) Close
DestroyModuleConfig ApplicationPanel: *
*ApplicationPanel: Geometry +83+3
*ApplicationPanel: BoxSize smart
*ApplicationPanel: ActiveColorset $[cs-panel-active]
*ApplicationPanel: Colorset $[cs-panel-inactive]
*ApplicationPanel: Rows  1
*ApplicationPanel: Padding 1 1
*ApplicationPanel: Frame 0

# fvwm-crystal.apps {{{2
PipeRead 'fvwm-crystal.apps --database=$[FVWM_SYSTEMDIR]/Applications --database=$[FVWM_USERDIR]/Applications --with=/Applications/debian --search-icons-in=$[FVWM_USERDIR]/icons/$[Icon-Theme]/22x22/categories:$[FVWM_USERDIR]/icons/$[Icon-Theme]/22x22/apps:$[FVWM_SYSTEMDIR]/icons/$[Icon-Theme]/22x22/categories:$[FVWM_SYSTEMDIR]/icons/$[Icon-Theme]/22x22/apps --default-file-icon=22x22/apps/default.png --default-dir-icon=22x22/categories/directory.png --min-submenu-length=5 --sort=prio --panel-icons=standard --panel-action1=menu --panel-action2=none --panel-action3=menu --menu-pos=S --menuname-suffix="Panel" --check-execs'
PipeRead 'fvwm-crystal.apps --database=$[FVWM_SYSTEMDIR]/Applications --database=$[FVWM_USERDIR]/Applications --without=/Applications/debian --search-icons-in=$[FVWM_USERDIR]/icons/$[Icon-Theme]/22x22/categories:$[FVWM_USERDIR]/icons/$[Icon-Theme]/22x22/apps:$[FVWM_SYSTEMDIR]/icons/$[Icon-Theme]/22x22/categories:$[FVWM_SYSTEMDIR]/icons/$[Icon-Theme]/22x22/apps --default-file-icon=22x22/apps/default.png --default-dir-icon=22x22/categories/directory.png --min-submenu-length=5 --sort=prio --panel-icons=topapp --panel-action1=menu --panel-action2=none --panel-action3=topapp --menu-pos=S --menuname-suffix="Panel" --check-execs'
PipeRead 'fvwm-crystal.apps --database=$[FVWM_SYSTEMDIR]/Applications --database=$[FVWM_USERDIR]/Applications --search-icons-in=$[FVWM_USERDIR]/icons/$[Icon-Theme]/22x22/categories:$[FVWM_USERDIR]/icons/$[Icon-Theme]/22x22/apps:$[FVWM_SYSTEMDIR]/icons/$[Icon-Theme]/22x22/categories:$[FVWM_SYSTEMDIR]/icons/$[Icon-Theme]/22x22/apps --default-file-icon=22x22/apps/default.png --default-dir-icon=22x22/categories/directory.png --min-submenu-length=5 --sort=prio --panel-icons=topapp --panel-action1=menu --panel-action2=none --panel-action3=topapp --menu-pos=S --no-panel --check-execs'
# }}}2

Module FvwmButtons ApplicationPanel

# Clock {{{1
All (FvwmButtons-Clock) Close
DestroyModuleConfig FvwmButtons-Clock: *
*FvwmButtons-Clock: Geometry -3+3
*FvwmButtons-Clock: BoxSize smart
*FvwmButtons-Clock: ActiveColorset $[cs-panel-active]
*FvwmButtons-Clock: Colorset $[cs-panel-inactive]
*FvwmButtons-Clock: Columns 2
*FvwmButtons-Clock: Padding 2 2
*FvwmButtons-Clock: Frame 0

*FvwmButtons-Clock: (2x1, Size 60 24, Swallow (Close, Respawn, FvwmModule) "FvwmScript-Clock-24h")

Module FvwmButtons FvwmButtons-Clock
Script components/scripts/FvwmScript-Clock-24h

# Pager {{{1
All (FvwmPager) Close
DestroyModuleConfig FvwmPager: *

SetEnv Desk-Pages-X "8"
SetEnv Desk-Pages-Y "1"

PipeRead 'echo SetEnv FvwmPager-Width $((28*$[Desk-Pages-X])); echo SetEnv FvwmPager-Height $((24*$[Desk-Pages-Y]))'
PipeRead 'echo *FvwmPager: Geometry $[FvwmPager-Width]x$[FvwmPager-Height]+$((($[vp.width]-$[FvwmPager-Width])/2))+3'
PipeRead 'echo DesktopSize $[Desk-Pages-X]x$[Desk-Pages-Y]'

*FvwmPager: MiniIcons
*FvwmPager: Font none
*FvwmPager: WindowBorderWidth 1
*FvwmPager: Window3DBorders
#*FvwmPager: NoSeparators
*FvwmPager: UseSkipList
*FvwmPager: Colorset * $[cs-panel-inactive]
*FvwmPager: HilightColorset * $[cs-panel-active]
*FvwmPager: WindowColorsets $[cs-panel-wininactive] $[cs-panel-winactive]

Module FvwmPager

# Change desktop pages using mouse wheel on pager
Mouse (FvwmPager) 4 W $[Mod] GotoPage-Right
Mouse (FvwmPager) 5 W $[Mod] GotoPage-Left

# Icons panel {{{1
All (FvwmIconMan-Icons) Close
DestroyModuleConfig FvwmIconMan-Icons: *

*FvwmIconMan-Icons: Resolution Global
*FvwmIconMan-Icons: UseWinList True
*FvwmIconMan-Icons: DontShow Class=xmms,FvwmButtons,FvwmIconMan,FvwmPager,FvwmIdent,FvwmForm
*FvwmIconMan-Icons: ShowOnlyIcons True
*FvwmIconMan-Icons: DrawIcons True
*FvwmIconMan-Icons: Sort Id
*FvwmIconMan-Icons: FollowFocus True
*FvwmIconMan-Icons: Format ""
*FvwmIconMan-Icons: Title ""
*FvwmIconMan-Icons: ButtonGeometry 24x24
*FvwmIconMan-Icons: ManagerGeometry 6x0-67+3
*FvwmIconMan-Icons: Font ""
# Tips settings {{{2
*FvwmIconMan-Icons: Tips always
*FvwmIconMan-Icons: TipsDelays 200 100
*FvwmIconMan-Icons: TipsFormat "%t"
*FvwmIconMan-Icons: TipsFont "xft:Verdana:pixelsize=12"
*FvwmIconMan-Icons: TipsBorderWidth 0
*FvwmIconMan-Icons: TipsColorset $[cs-panel-inactive]
*FvwmIconMan-Icons: TipsJustification leftup
# Button look {{{2
*FvwmIconMan-Icons: PlainButton flat
*FvwmIconMan-Icons: FocusButton flat
*FvwmIconMan-Icons: SelectButton flat
*FvwmIconMan-Icons: FocusAndSelectButton flat
*FvwmIconMan-Icons: IconButton flat
# Colorsets {{{2
*FvwmIconMan-Icons: Colorset $[cs-panel-inactive]
*FvwmIconMan-Icons: PlainColorset $[cs-panel-wininactive]
*FvwmIconMan-Icons: FocusColorset $[cs-panel-winactive]
*FvwmIconMan-Icons: SelectColorset $[cs-panel-active]
*FvwmIconMan-Icons: FocusAndSelectColorset $[cs-panel-active]
*FvwmIconMan-Icons: IconColorset $[cs-panel-inactive]
# Actions {{{2
*FvwmIconMan-Icons: Action Mouse 1 $[Mod] SendCommand "Function Window-Focus-CurrentDesk-Raised"
*FvwmIconMan-Icons: Action Mouse 2 $[Mod2] SendCommand "Close"
*FvwmIconMan-Icons: Action Mouse 2 $[Mod0] SendCommand "Nop"
*FvwmIconMan-Icons: Action Mouse 3 $[Mod] SendCommand "Function Window-Focus-DefaultDesk-Raised"
# }}}2

Module FvwmIconMan FvwmIconMan-Icons
Style * NoIcon

# Left window list {{{1
All (FvwmIconMan-Windows-Left) Close
DestroyModuleConfig FvwmIconMan-Windows-Left: *

*FvwmIconMan-Windows-Left: Resolution Global
*FvwmIconMan-Windows-Left: UseWinList True
*FvwmIconMan-Windows-Left: DontShow Class=xmms,XTerm,Eterm,xfce4-terminal,konsole,gnome-terminal,Multi-gnome-terminal,urxvt,FvwmButtons,FvwmIconMan,FvwmPager,FvwmIdent,FvwmForm
*FvwmIconMan-Windows-Left: ShowNoIcons True
*FvwmIconMan-Windows-Left: DrawIcons Always
*FvwmIconMan-Windows-Left: Sort Id
*FvwmIconMan-Windows-Left: FollowFocus True
*FvwmIconMan-Windows-Left: Format "%t"
*FvwmIconMan-Windows-Left: Title ""
PipeRead "echo *FvwmIconMan-Windows-Left: ButtonGeometry $((($[vp.width]-140)/2))x24"
*FvwmIconMan-Windows-Left: ManagerGeometry 1x1+67-3
*FvwmIconMan-Windows-Left: MaxButtonWidthByColumns 4
# Tips {{{2
*FvwmIconMan-Windows-Left: TipsFormat "%t"
*FvwmIconMan-Windows-Left: Font "xft:Verdana:pixelsize=12"
*FvwmIconMan-Windows-Left: Tips needed
*FvwmIconMan-Windows-Left: TipsDelays 500 200
*FvwmIconMan-Windows-Left: TipsFont "xft:Verdana:pixelsize=12"
*FvwmIconMan-Windows-Left: TipsBorderWidth 0
*FvwmIconMan-Windows-Left: TipsColorset $[cs-panel-inactive]
*FvwmIconMan-Windows-Left: TipsJustification leftup
# Button look {{{2
*FvwmIconMan-Windows-Left: PlainButton flat
*FvwmIconMan-Windows-Left: FocusButton flat
*FvwmIconMan-Windows-Left: SelectButton flat
*FvwmIconMan-Windows-Left: FocusAndSelectButton flat
*FvwmIconMan-Windows-Left: IconButton flat
# Colorsets {{{2
*FvwmIconMan-Windows-Left: Colorset $[cs-panel-inactive]
*FvwmIconMan-Windows-Left: PlainColorset $[cs-panel-wininactive]
*FvwmIconMan-Windows-Left: FocusColorset $[cs-panel-winactive]
*FvwmIconMan-Windows-Left: SelectColorset $[cs-panel-active]
*FvwmIconMan-Windows-Left: FocusAndSelectColorset $[cs-panel-active]
*FvwmIconMan-Windows-Left: IconColorset $[cs-panel-inactive]
# Actions {{{2
*FvwmIconMan-Windows-Left: Action Mouse 1 A SendCommand "Function Window-Focus-DefaultDesk-Raised"
*FvwmIconMan-Windows-Left: Action Mouse 2 $[Mod2] SendCommand "Close"
*FvwmIconMan-Windows-Left: Action Mouse 2 $[Mod0] SendCommand "Window-Iconify"
*FvwmIconMan-Windows-Left: Action Mouse 3 $[Mod] SendCommand "Function Window-Focus-CurrentDesk-Raised"
# }}}2

Module FvwmIconMan FvwmIconMan-Windows-Left

# Right window list {{{1
All (FvwmIconMan-Windows-Right) Close
DestroyModuleConfig FvwmIconMan-Windows-Right: *

*FvwmIconMan-Windows-Right: Resolution Global
*FvwmIconMan-Windows-Right: UseWinList True
*FvwmIconMan-Windows-Right: DontShow Class=xmms,FvwmButtons,FvwmIconMan,FvwmPager,FvwmIdent,FvwmForm
*FvwmIconMan-Windows-Right: Show Class=XTerm,Eterm,xfce4-terminal,konsole,gnome-terminal,Multi-gnome-terminal,urxvt
*FvwmIconMan-Windows-Right: ShowNoIcons True
*FvwmIconMan-Windows-Right: DrawIcons Always
*FvwmIconMan-Windows-Right: Sort Id
*FvwmIconMan-Windows-Right: FollowFocus True
*FvwmIconMan-Windows-Right: Format "%t"
*FvwmIconMan-Windows-Right: Title ""
PipeRead "echo *FvwmIconMan-Windows-Right: ButtonGeometry $((($[vp.width]-315)/2))x24"
*FvwmIconMan-Windows-Right: ManagerGeometry 1x1-155-3
*FvwmIconMan-Windows-Right: MaxButtonWidthByColumns 4
*FvwmIconMan-Windows-Right: Font "xft:Verdana:pixelsize=12"
# Tips {{{2
*FvwmIconMan-Windows-Right: Tips needed
*FvwmIconMan-Windows-Right: TipsDelays 500 200
*FvwmIconMan-Windows-Right: TipsFormat "%t"
*FvwmIconMan-Windows-Right: TipsFont "xft:Verdana:pixelsize=12"
*FvwmIconMan-Windows-Right: TipsBorderWidth 0
*FvwmIconMan-Windows-Right: TipsColorset $[cs-panel-inactive]
*FvwmIconMan-Windows-Right: TipsJustification leftup
# Button look {{{2
*FvwmIconMan-Windows-Right: PlainButton flat
*FvwmIconMan-Windows-Right: FocusButton flat
*FvwmIconMan-Windows-Right: SelectButton flat
*FvwmIconMan-Windows-Right: FocusAndSelectButton flat
*FvwmIconMan-Windows-Right: IconButton flat
# Colorsets {{{2
*FvwmIconMan-Windows-Right: Colorset $[cs-panel-inactive]
*FvwmIconMan-Windows-Right: PlainColorset $[cs-panel-wininactive]
*FvwmIconMan-Windows-Right: FocusColorset $[cs-panel-winactive]
*FvwmIconMan-Windows-Right: SelectColorset $[cs-panel-active]
*FvwmIconMan-Windows-Right: FocusAndSelectColorset $[cs-panel-active]
*FvwmIconMan-Windows-Right: IconColorset $[cs-panel-inactive]
# Actions {{{2
*FvwmIconMan-Windows-Right: Action Mouse 1 A SendCommand "Function Window-Focus-DefaultDesk-Raised"
*FvwmIconMan-Windows-Right: Action Mouse 2 $[Mod2] SendCommand "Close"
*FvwmIconMan-Windows-Right: Action Mouse 2 $[Mod0] SendCommand "Window-Iconify"
*FvwmIconMan-Windows-Right: Action Mouse 3 $[Mod] SendCommand "Function Window-Focus-CurrentDesk-Raised"
# }}}2

Module FvwmIconMan FvwmIconMan-Windows-Right

# AcpiBatt {{{1
All (FvwmButtons-AcpiBatt) Close
DestroyModuleConfig FvwmButtons-AcpiBatt: *
*FvwmButtons-AcpiBatt: Geometry +3-3
*FvwmButtons-AcpiBatt: BoxSize smart
*FvwmButtons-AcpiBatt: ActiveColorset $[cs-panel-active]
*FvwmButtons-AcpiBatt: Colorset $[cs-panel-inactive]
*FvwmButtons-AcpiBatt: Columns 2
*FvwmButtons-AcpiBatt: Padding 2 2
*FvwmButtons-AcpiBatt: Frame 0

*FvwmButtons-AcpiBatt: (2x1, Size 60 24, Swallow (Close, Respawn) "FvwmScript-AcpiBatt")

Module FvwmButtons FvwmButtons-AcpiBatt
Script components/scripts/FvwmScript-AcpiBatt


# CpuTemp {{{1
All (FvwmButtons-CpuTemp) Close
DestroyModuleConfig FvwmButtons-CpuTemp: *
*FvwmButtons-CpuTemp: Geometry -3-3
*FvwmButtons-CpuTemp: BoxSize smart
*FvwmButtons-CpuTemp: ActiveColorset $[cs-panel-active]
*FvwmButtons-CpuTemp: Colorset $[cs-panel-inactive]
*FvwmButtons-CpuTemp: Columns 3
*FvwmButtons-CpuTemp: Padding 2 2
*FvwmButtons-CpuTemp: Frame 0

*FvwmButtons-CpuTemp: (3x1, Size 72 24, Swallow (Close, Respawn) "FvwmScript-CpuTemp")

Module FvwmButtons FvwmButtons-CpuTemp
Script components/scripts/FvwmScript-CpuTemp

# CpuFreq {{{1
All (FvwmButtons-CpuFreq) Close
DestroyModuleConfig FvwmButtons-CpuFreq: *
*FvwmButtons-CpuFreq: Geometry -79-3
*FvwmButtons-CpuFreq: BoxSize smart
*FvwmButtons-CpuFreq: ActiveColorset $[cs-panel-active]
*FvwmButtons-CpuFreq: Colorset $[cs-panel-inactive]
*FvwmButtons-CpuFreq: Columns 3
*FvwmButtons-CpuFreq: Padding 2 2
*FvwmButtons-CpuFreq: Frame 0

*FvwmButtons-CpuFreq: (3x1, Size 72 24, Swallow (Close, Respawn) "FvwmScript-CpuFreq")

Module FvwmButtons FvwmButtons-CpuFreq
Script components/scripts/FvwmScript-CpuFreq

# Settings for FvwmIdent {{{1
*FvwmIdent: Font "xft:Tahoma:pixelsize=12:Bold"
*FvwmIdent: Colorset $[cs-panel-active]

# Settings for FvwmForm {{{1
*FvwmFormDefault: Colorset $[cs-panel-inactive]
*FvwmFormDefault: ItemColorset $[cs-panel-active]
*FvwmFormDefault: Font "xft:Tahoma:pixelsize=13"
*FvwmFormDefault: InputFont "xft:Monospace:pixelsize=13"
*FvwmFormDefault: ButtonFont "xft:Tahoma:pixelsize=13:Bold"
*FvwmFormDefault: TimeoutFont "xft:Tahoma:pixelsize=13:Bold"

# Settings of Trayer {{{1
AddToFunc ExitFunction I Exec exec killall trayer

AddToFunc StartFunction I Exec exec trayer \
--SetDockType false \
--widthtype request \
--heighttype pixel \
--height 24 \
--edge top \
--align right \
--transparent true \
--alpha $[TrayerAlpha] \
--tint $[TrayerTint] \
--margin 217 \
--distance 3

# ViM modeline {{{1
# vim:foldmethod=marker:foldenable:foldlevel=0:ft=fvwm
